package com.moon.cloud.log.entity;

import java.io.Serializable;
import java.time.LocalDateTime;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

/**
 * 请求日志表
 * 
 * @TableName request_log
 */
@TableName(value = "request_log")
public class RequestLog implements Serializable {

    /**
     * 
     */
    @TableId(value = "request_id", type = IdType.ASSIGN_ID)
    private Long requestId;

    /**
     * 服务名称
     */
    private String serverName;

    /**
     * 请求路径
     */
    private String requestUrl;

    /**
     * 请求时间
     */
    private LocalDateTime requestTime;

    /**
     * 控制器业务类型
     */
    private String requestController;

    /**
     * HTTP方法
     */
    private String requestMethod;

    /**
     * 操作类型
     */
    private String requestOperate;

    /**
     * 请求结束时间
     */
    private LocalDateTime requestEndTime;

    /**
     * 请求参数
     */
    private String requestParam;

    /**
     * 返回结果
     */
    private String requestResult;

    /**
     * 异常信息
     */
    private String requestException;

    /**
     * 请求IP
     */
    private String requestIp;

    /**
     * 请求头内容
     */
    private String requestHeaders;

    /**
     * 请求状态：success/error
     */
    private String requestStatus;

    public Long getRequestId() {
        return requestId;
    }

    public void setRequestId(Long requestId) {
        this.requestId = requestId;
    }

    public String getServerName() {
        return serverName;
    }

    public void setServerName(String serverName) {
        this.serverName = serverName;
    }

    public String getRequestUrl() {
        return requestUrl;
    }

    public void setRequestUrl(String requestUrl) {
        this.requestUrl = requestUrl;
    }

    public LocalDateTime getRequestTime() {
        return requestTime;
    }

    public void setRequestTime(LocalDateTime requestTime) {
        this.requestTime = requestTime;
    }

    public String getRequestController() {
        return requestController;
    }

    public void setRequestController(String requestController) {
        this.requestController = requestController;
    }

    public String getRequestMethod() {
        return requestMethod;
    }

    public void setRequestMethod(String requestMethod) {
        this.requestMethod = requestMethod;
    }

    public String getRequestOperate() {
        return requestOperate;
    }

    public void setRequestOperate(String requestOperate) {
        this.requestOperate = requestOperate;
    }

    public LocalDateTime getRequestEndTime() {
        return requestEndTime;
    }

    public void setRequestEndTime(LocalDateTime requestEndTime) {
        this.requestEndTime = requestEndTime;
    }

    public String getRequestParam() {
        return requestParam;
    }

    public void setRequestParam(String requestParam) {
        this.requestParam = requestParam;
    }

    public String getRequestResult() {
        return requestResult;
    }

    public void setRequestResult(String requestResult) {
        this.requestResult = requestResult;
    }

    public String getRequestException() {
        return requestException;
    }

    public void setRequestException(String requestException) {
        this.requestException = requestException;
    }

    public String getRequestIp() {
        return requestIp;
    }

    public void setRequestIp(String requestIp) {
        this.requestIp = requestIp;
    }

    public String getRequestHeaders() {
        return requestHeaders;
    }

    public void setRequestHeaders(String requestHeaders) {
        this.requestHeaders = requestHeaders;
    }

    public String getRequestStatus() {
        return requestStatus;
    }

    public void setRequestStatus(String requestStatus) {
        this.requestStatus = requestStatus;
    }

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;

}